package com.neuedu.fileIO;

import java.io.File;
import java.io.IOException;

public class FileTestDriver {
    public static void main(String[] args) {
        test02();
    }

    /**
     * File工具类用法
     */
    private static void test03() {
        // 创建一个File实例对象
        File file0 = new File("e:/temp/test01/");
        if (file0.exists()) {
            // 获取这个目录文件下的所有的文件对象信息
            String[] strFiles = file0.list();
            System.out.println("打印文件信息：");
            if (strFiles != null) {
                for (String str : strFiles) {
                    System.out.println(str);
                }
            }
            System.out.println("----------------------------");
            File[] files = file0.listFiles();
            if (files != null) {
                // 遍历打印当前目录文件下的所有的文件信息
                for (File f : files) {
                    System.out.println(f.getAbsolutePath());
                }
            }
        }
    }

    /**
     * File工具类用法
     */
    private static void test02() {
        // 创建一个File实例对象
        File file0 = new File("e:\\temp/test01/file0.txt");
        // 打印文件相关信息
        System.out.println("AbsolutePath:" + file0.getAbsolutePath());
        System.out.println("Parent:" + file0.getParent());
        System.out.println("Path:" + file0.getPath());
        System.out.println("Name:" + file0.getName());
        try {
            System.out.println("CanonicalPath:" + file0.getCanonicalPath());
        } catch (IOException e) {
            e.printStackTrace();
        }

    }

    /**
     * File工具类用法
     */
    private static void test01() {
        // 创建一个File实例对象
        File file0 = new File("e:/temp/test01/file0.txt");
        // 判断文件是否存在
        if (!file0.exists()) {
            // 不存在
            // 创建文件对象
            if (file0.isDirectory()) {
                // 如果是目录，则创建目录
                file0.mkdirs();
            } else {
                try {
                    // 创建文件之前，要保证文件所在的目录已存在，否则会出现异常
                    new File(file0.getParent()).mkdirs();
                    // 创建文件
                    file0.createNewFile();
                } catch (IOException e) {
                    //e.printStackTrace();
                    System.out.println("新建文件异常：" + e.getMessage());
                    // 创建文件发生了异常，可能是因为目录没有创建
                    // 创建目录
                    //new File("d:\\temp/test01/").mkdirs();
                }
            }
        }

        // 使用getXXX方法输出文件信息
        System.out.println(file0.getName());
    }
}
